Package-level declarations

This is the main package for the Viaduct Tenant API, containing the core interfaces and classes that tenants will use to implement their GraphQL schema behavior.

Types

Link copied to clipboard

Specialized resolver base for connection field resolvers. Extends FieldResolverBase with the additional constraint that A is a ConnectionArguments, exposing pagination utilities.

Link copied to clipboard

Specialized resolver base for field resolvers. Exposes type parameters that allow the testing framework to infer parent object, query, and arguments types at compile time.

Link copied to clipboard
sealed interface FieldValue<out T>

Represents the value of a resolved GraphQL object field

Link copied to clipboard

Specialized resolver base for mutation field resolvers. Mutations have no parent object, so this interface has no O parameter unlike FieldResolverBase.

Link copied to clipboard

Specialized resolver base for node resolvers.

Link copied to clipboard
interface ResolverBase<T>

Base interface for field resolver classes.

Link copied to clipboard
interface TenantModule

Marker interface for a Viaduct tenant module.

Functions

Link copied to clipboard
inline suspend fun <T> fetchOrDefault(default: T, block: suspend () -> T): T

Executes the given block and returns its result, or default if an exception is thrown.

Link copied to clipboard
inline suspend fun <T> fetchOrNull(block: suspend () -> T): T?

Executes the given block and returns its result, or null if an exception is thrown.